package com.gzhryc.shared_device.oem.h5.agent.dto.api.v1.cdcz;

import com.gzhryc.common.api.SecurityResponse;

import java.io.Serializable;
import java.util.Date;
import java.util.List;

public class CDCZOrderInfoResponse extends SecurityResponse<CDCZOrderInfoResponse.Body> {

	private static final long serialVersionUID = 1L;

	public CDCZOrderInfoResponse() {
	}

	public CDCZOrderInfoResponse(Integer code) {
		super(code);
		this.body = new Body();
	}

	public CDCZOrderInfoResponse(Integer code, String msg) {
		super(code,msg);
		this.body = new Body();
	}


	public static class Body implements Serializable {

		private static final long serialVersionUID = 1L;

		private String tradeNo;

		private Integer businessOrderState;
		private String businessOrderStateName;

		private Integer costMode;
		private String costModeName;
		private String electricityMoney;    //电费
		private Long maxUseTimes;       	//最大使用时长
		private Double maxUseChargeElectricity; //最大电量

		private Long useTimes;
		private Double useChargeElectricity;
		private Integer stopMode;
		private String stopModeName;
		private Date startDate;
		private Date endDate;

		private Integer payType;
		private String payTypeName;

		private String moneyStr;
		private String discountMoney;
		private String payMoneyStr;

		private Long districtId;
		private String districtName;
		private String areaName;
		private String address;

		private String deviceSn;
		private String deviceTypeName;
		private Integer slotNum;

		private Long memberId;
		private String memberName;

		private Integer state;
		private String stateName;

		private Integer payState;
		private String payStateName;

		private Date createDate;

		private PolygonalLineData polygonalLineData;

		public String getTradeNo() {
			return tradeNo;
		}

		public void setTradeNo(String tradeNo) {
			this.tradeNo = tradeNo;
		}

		public Integer getBusinessOrderState() {
			return businessOrderState;
		}

		public void setBusinessOrderState(Integer businessOrderState) {
			this.businessOrderState = businessOrderState;
		}

		public String getBusinessOrderStateName() {
			return businessOrderStateName;
		}

		public void setBusinessOrderStateName(String businessOrderStateName) {
			this.businessOrderStateName = businessOrderStateName;
		}

		public Integer getCostMode() {
			return costMode;
		}

		public void setCostMode(Integer costMode) {
			this.costMode = costMode;
		}

		public String getCostModeName() {
			return costModeName;
		}

		public void setCostModeName(String costModeName) {
			this.costModeName = costModeName;
		}

		public String getElectricityMoney() {
			return electricityMoney;
		}

		public void setElectricityMoney(String electricityMoney) {
			this.electricityMoney = electricityMoney;
		}

		public Long getMaxUseTimes() {
			return maxUseTimes;
		}

		public void setMaxUseTimes(Long maxUseTimes) {
			this.maxUseTimes = maxUseTimes;
		}

		public Double getMaxUseChargeElectricity() {
			return maxUseChargeElectricity;
		}

		public void setMaxUseChargeElectricity(Double maxUseChargeElectricity) {
			this.maxUseChargeElectricity = maxUseChargeElectricity;
		}

		public Long getUseTimes() {
			return useTimes;
		}

		public void setUseTimes(Long useTimes) {
			this.useTimes = useTimes;
		}

		public Double getUseChargeElectricity() {
			return useChargeElectricity;
		}

		public void setUseChargeElectricity(Double useChargeElectricity) {
			this.useChargeElectricity = useChargeElectricity;
		}

		public Integer getStopMode() {
			return stopMode;
		}

		public void setStopMode(Integer stopMode) {
			this.stopMode = stopMode;
		}

		public String getStopModeName() {
			return stopModeName;
		}

		public void setStopModeName(String stopModeName) {
			this.stopModeName = stopModeName;
		}

		public Date getStartDate() {
			return startDate;
		}

		public void setStartDate(Date startDate) {
			this.startDate = startDate;
		}

		public Date getEndDate() {
			return endDate;
		}

		public void setEndDate(Date endDate) {
			this.endDate = endDate;
		}

		public Integer getPayType() {
			return payType;
		}

		public void setPayType(Integer payType) {
			this.payType = payType;
		}

		public String getPayTypeName() {
			return payTypeName;
		}

		public void setPayTypeName(String payTypeName) {
			this.payTypeName = payTypeName;
		}

		public String getMoneyStr() {
			return moneyStr;
		}

		public void setMoneyStr(String moneyStr) {
			this.moneyStr = moneyStr;
		}

		public String getDiscountMoney() {
			return discountMoney;
		}

		public void setDiscountMoney(String discountMoney) {
			this.discountMoney = discountMoney;
		}

		public String getPayMoneyStr() {
			return payMoneyStr;
		}

		public void setPayMoneyStr(String payMoneyStr) {
			this.payMoneyStr = payMoneyStr;
		}

		public Long getDistrictId() {
			return districtId;
		}

		public void setDistrictId(Long districtId) {
			this.districtId = districtId;
		}

		public String getDistrictName() {
			return districtName;
		}

		public void setDistrictName(String districtName) {
			this.districtName = districtName;
		}

		public String getAreaName() {
			return areaName;
		}

		public void setAreaName(String areaName) {
			this.areaName = areaName;
		}

		public String getAddress() {
			return address;
		}

		public void setAddress(String address) {
			this.address = address;
		}

		public String getDeviceSn() {
			return deviceSn;
		}

		public void setDeviceSn(String deviceSn) {
			this.deviceSn = deviceSn;
		}

		public String getDeviceTypeName() {
			return deviceTypeName;
		}

		public void setDeviceTypeName(String deviceTypeName) {
			this.deviceTypeName = deviceTypeName;
		}

		public Integer getSlotNum() {
			return slotNum;
		}

		public void setSlotNum(Integer slotNum) {
			this.slotNum = slotNum;
		}

		public Long getMemberId() {
			return memberId;
		}

		public void setMemberId(Long memberId) {
			this.memberId = memberId;
		}

		public String getMemberName() {
			return memberName;
		}

		public void setMemberName(String memberName) {
			this.memberName = memberName;
		}

		public Integer getState() {
			return state;
		}

		public void setState(Integer state) {
			this.state = state;
		}

		public String getStateName() {
			return stateName;
		}

		public void setStateName(String stateName) {
			this.stateName = stateName;
		}

		public Integer getPayState() {
			return payState;
		}

		public void setPayState(Integer payState) {
			this.payState = payState;
		}

		public String getPayStateName() {
			return payStateName;
		}

		public void setPayStateName(String payStateName) {
			this.payStateName = payStateName;
		}

		public Date getCreateDate() {
			return createDate;
		}

		public void setCreateDate(Date createDate) {
			this.createDate = createDate;
		}

		public PolygonalLineData getPolygonalLineData() {
			return polygonalLineData;
		}

		public void setPolygonalLineData(PolygonalLineData polygonalLineData) {
			this.polygonalLineData = polygonalLineData;
		}
	}

	public static class PolygonalLineData {

		private List<String> categories;
		private List<SeriesItem> series;

		public List<String> getCategories() {
			return categories;
		}

		public void setCategories(List<String> categories) {
			this.categories = categories;
		}

		public List<SeriesItem> getSeries() {
			return series;
		}

		public void setSeries(List<SeriesItem> series) {
			this.series = series;
		}

	}

	public static class SeriesItem {

		private String name;
		private List<Double> data;

		public String getName() {
			return name;
		}

		public void setName(String name) {
			this.name = name;
		}

		public List<Double> getData() {
			return data;
		}

		public void setData(List<Double> data) {
			this.data = data;
		}
	}
}
